s += "%s = rand() %% 2;\n" % v
elif ty.typename in ["char *"]:
s += "%s = rand_str();\n" % v
+ elif ty.private:
+ pass
elif ty.typename in handcoded:
raise Exception("Gen for handcoded %s" % ty.typename)
else:
if self.passby not in [PASS_BY_VALUE, PASS_BY_REFERENCE]:
raise ValueError
+ self.private = kwargs.setdefault('private', False)
+
if typename is None: # Anonymous type
self.typename = None
self.rawname = None
self.autogenerate_dispose_fn = kwargs.setdefault('autogenerate_dispose_fn', True)
- if self.typename is not None:
+ if self.typename is not None and not self.private:
self.json_fn = kwargs.setdefault('json_fn', self.typename + "_gen_json")
else:
self.json_fn = kwargs.setdefault('json_fn', None)
l.append('static PyGetSetDef Py%s_getset[] = {'%ty.rawname)
for f in ty.fields:
+ if f.type.private:
+ continue
l.append(' { .name = "%s", '%f.name)
if ty.marshal_out():
l.append(' .get = (getter)py_%s_%s_get, '%(ty.rawname, f.name))
""" % tuple((' '.join(sys.argv),) + (os.path.split(decls)[-1:]),))
for ty in types:
+ if ty.private:
+ continue
if isinstance(ty, libxltypes.Aggregate):
f.write('/* Attribute get/set functions for %s */\n'%ty.typename)
for a in ty.fields:
+ if a.type.private:
+ continue
if ty.marshal_out():
f.write(py_attrib_get(ty,a))
if ty.marshal_in():